package org.cnam.mobileShopping.controller;

import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.cnam.mobileShopping.bean.Category;
import org.cnam.mobileShopping.bean.Product;
import org.cnam.mobileShopping.bean.Userlist;
import org.cnam.mobileShopping.dao.DAO;
import org.cnam.mobileShopping.dao.DAOFactory;
import org.cnam.mobileShopping.dao.ProductDAO;
import org.cnam.mobileShopping.util.MobileShoppingUtils;
import org.cnam.mobileShopping.wsclient.WSClient;
import org.json.JSONException;

import android.content.Context;

/**
 * Controller sur les UserList.
 */
public class UserListController {

	/**
	 * Creation d'un userList.
	 * 
	 * @param obj
	 *            : un userList.
	 * @return le userList ainsi créé
	 */
	public static Userlist createUserList(Context context, Userlist obj) {
		Userlist userList = null;
		//ajout en base locale
		long userListId = DAOFactory.getUserListDAO(context).create(obj);
		userList = DAOFactory.getUserListDAO(context).find((int)userListId);
		// on l'envoit au webservices si on est connecte
		if(MobileShoppingUtils.isConnected(context)) {
			//WSClient.getInstance().addProductInReferenciel(obj);
			//TODO appel au ws
		}
		return userList;
	}

	/**
	 * Supression d'un userList.
	 * 
	 * @param obj
	 *            : un userList.
	 * @return true si la supression est ok.
	 */
	public static boolean deleteUserList(Context context,Userlist obj) {
		return (DAOFactory.getUserListDAO(context).delete(obj));
	}

	/**
	 * Mise à jours d'un userList.
	 * 
	 * @param obj
	 *            : un userList.
	 * @return true si la maj est ok.
	 */
	public static boolean updateUserList(Context context,Userlist obj) {
		return (DAOFactory.getUserListDAO(context).update(obj));
	}
}
